MySQL
MySQL è un database relazionale composto da un client con interfaccia a caratteri e un server, entrambi disponibili sia per sistemi Unix che per Windows, anche se prevale un suo utilizzo in ambito Unix.Dal 1996 supporta la maggior parte della sintassi SQL e si prevede in futuro il pieno rispetto dello standard ANSI. Possiede delle interfacce di linguaggio MySQL per 15 diversi linguaggi sia di programmazione che non, compreso un driver ODBC per le piattaforme Windows.
Il codice di MySQL viene sviluppato fin dal 1979 dalla ditta TcX ataconsult, adesso MySQL AB, ma è solo dal 1996 che viene distribuita una versione che supporta SQL, utilizzando in parte codice di un altro prodotto: mSQL.
Il codice di MySQL è di proprietà della omonima società , viene però distribuito con la licenza GNU GPL oltre che con una licenza commerciale. Una buona parte del codice del client è licenziato con la GNU LGPL e può dunque essere utilizzato per applicazioni commerciali.
La società svedese MySQL AB ha circa trenta dipendenti e i suoi principali introiti provengono dal supporto online agli utilizzatori di MySQL, dalla vendita delle licenze commerciali e dall'utilizzo da parte di terzi del marchio MySQL.
Lo sviluppo del programma viene fatto soprattutto dai suoi sviluppatori iniziali: David Axmark, Allan Larsson e Michael Widenius.Quest'ultimo è il principale autore del codice -oltre che principale socio della società - e coordina il progetto, tra l'altro vagliando i contributi che pervengono dai volontari. I contributi vengono accettati a condizione che il loro autore condivida i diritti d'autore con la società .
Nel 2001 la MySQL AB ha avuto una lite giudiziaria con una società sia per il marchio MySQL che per la violazione della licenza GPL.
Agli inizi del 2003 è stata rilasciata la prima versione di produzione della serie 4.0.x
Le versioni ora in sviluppo sono la 4.1.x e la 5.0.x
Le aggiunte più significative della 4.1.x sono le subquery. Queste sono delle query SQL nidificate. Si ha dunque la possibilità di scrivere:
"SELECT * FROM tabella1 WHERE colonna1 = (SELECT colonna1 FROM tabella2)".è prevista inoltre la possibilità di lavorare con dati geografici memorizzati secondo il modello OpenGIS.
Le aggiunte più significative della 5.0.x sono le stored procedures.
MySQL è disponibile su molti differenti sistemi operativi tra cui AIX, BSDi, FreeBSD, HP-UX, GNU Linux, Mac OS X, NetBSD, OpenBSD, OS/2 Warp, SGI IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64, Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP.